export interface FileItem {
  name: string;
  fileName: string;
  type: string;
  size: number;
  customUrl: string;
}

export interface FolderItem {
  name: string;
  displayName: string;
}

export interface ApiResponse<T = any> {
  success: boolean;
  error?: string;
  data?: T;
}

export interface FoldersResponse {
  folders: FolderItem[];
}

export interface FolderContentsResponse {
  subFolders: FolderItem[];
  files: FileItem[];
}

export interface UploadResponse {
  customUrl: string;
  fileName: string;
}

export interface MultipleUploadResponse {
  success: number;
  failed: number;
  results: Array<{
    success: boolean;
    customUrl?: string;
    fileName?: string;
    error?: string;
  }>;
} 